package com.wilmer.question.domain;

import com.wilmer.common.annotation.Excel;
import com.wilmer.common.annotation.Excels;
import com.wilmer.common.core.domain.BaseEntity;
import com.wilmer.options.domain.YwOptions;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.List;


public class YwQuestionVO extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** id */
    private Long questionId;

    /** 题描述 */
    @Excel(name = "题描述", cellType = Excel.ColumnType.NUMERIC,width = 20,needMerge = true)
    private String content;

    /** 题目类型 */
    @Excel(name = "题目类型填数字(1主观题 2选择题 3填空题 4多选题)",width = 50,needMerge = true)
    private String type;

    /** 题目难度等级 */
    @Excel(name = "题目难度等级填数字(1初级 2中级 3高级)",width = 40,needMerge = true)
    private String difficultyLevel;

    /** 完成此题目所能获得的分数 */
    @Excel(name = "完成此题目所能获得的分数",width = 35,needMerge = true)
    private BigDecimal score;

    /** 课程表id,表示题目属于哪个课程 */
    private Long courseId;
    private String courseName;

    /** 题目包含图片，这里可以存储图片 */
//    @Excel(name = "题目包含图片，这里可以存储图片")
    private String image;

    /** 题目是否展示（1展示 2不展示） */
//    @Excel(name = "题目是否展示", readConverterExp = "1=展示,2=不展示")
    private String active;

//    @Excel(name = "选项信息")
    @Excels({
            @Excel(name = "选项描述", targetAttr = "content"),
            @Excel(name = "该选项是否是正确答案填数字(1正确 2不正确)", targetAttr = "isCorrect"),
            @Excel(name = "选项在题目中的顺序", targetAttr = "optionOrder", dictType = "yw_options")
    })
    private List<YwOptions> ywOptionsList;

    public List<YwOptions> getYwOptionsList() {
        return ywOptionsList;
    }

    public void setYwOptionsList(List<YwOptions> ywOptionsList) {
        this.ywOptionsList = ywOptionsList;
    }

    public void setQuestionId(Long questionId)
    {
        this.questionId = questionId;
    }

    public String getCourseName() {
        return courseName;
    }

    public void setCourseName(String courseName) {
        this.courseName = courseName;
    }

    public Long getQuestionId()
    {
        return questionId;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setDifficultyLevel(String difficultyLevel) 
    {
        this.difficultyLevel = difficultyLevel;
    }

    public String getDifficultyLevel() 
    {
        return difficultyLevel;
    }
    public void setScore(BigDecimal score) 
    {
        this.score = score;
    }

    public BigDecimal getScore() 
    {
        return score;
    }
    public void setCourseId(Long courseId) 
    {
        this.courseId = courseId;
    }

    public Long getCourseId() 
    {
        return courseId;
    }
    public void setImage(String image) 
    {
        this.image = image;
    }

    public String getImage() 
    {
        return image;
    }
    public void setActive(String active) 
    {
        this.active = active;
    }

    public String getActive() 
    {
        return active;
    }

}
